package com.example.teesystem.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.teesystem.common.utils.Response;
import com.example.teesystem.entity.Assistant;
import com.example.teesystem.entity.Course;
import com.example.teesystem.entity.Permission;
import com.example.teesystem.entity.vo.assistant.AssistantUpdateVo;
import com.example.teesystem.entity.vo.assistant.AssistantUploadVo;
import com.fasterxml.jackson.annotation.JsonTypeInfo;

import java.util.List;


/**
 * @description 针对表【t_assistant】的数据库操作Service
 */
public interface AssistantService extends IService<Assistant> {
    Response add(AssistantUploadVo assistantUploadVo);

    Response add(List<AssistantUploadVo> assistantUploadVos);

    Response update(AssistantUpdateVo assistantUpdateVo);

    Response remove(Integer id);

    List<Assistant> selectByCourseAndAssistant(AssistantUploadVo assistantUploadVo);

    List<Assistant> getAssistantByCourse(Integer courseId);

    List<Course> getAssistantByAid(Integer assistantId);

    List<Permission> getAssistantPermissions(Integer courseId, Integer assistantId);
    
    List<String> getAssistantNamesByCourseId(Integer courseId);
}
